|
The Tanenbaum–Torvalds debate was a debate between Andrew S. Tanenbaum and Linus Torvalds, regarding the Linux kernel and kernel architecture in general. Tanenbaum began the debate in 1992 on the Usenet discussion group comp.os.minix, arguing that microkernels are superior to monolithic kernels and therefore Linux was, even in 1992, obsolete. Other hackers such as David S. Miller and Theodore Ts'o joined the debate.〔It is worth noting that commentary by a Ken Thompson can also be seen in the original discussion—this is, however, not the same person as Kenneth Lane Thompson of UNIX pioneering fame.〕 The debate has sometimes been considered a flame war. ==The debate== While the debate initially started out as relatively moderate, with both parties involved making only banal statements about kernel design, it would get progressively more detailed and sophisticated with every round of posts. Besides just kernel design, the debate branched into several other topics, such as which microprocessor architecture would win out over others in the future. Besides Tanenbaum and Torvalds, several other people joined the debate, including Peter MacDonald, an early Linux kernel developer and creator of one of the first distributions, Softlanding Linux System; David S. Miller, one of the core developers of the Linux kernel; and Theodore Ts'o, the first North American Linux kernel developer. The first occurrence of this debate was recorded on January 29, 1992, when Tanenbaum first posted his criticism on the Linux kernel to comp.os.minix, noting how the monolithic design was detrimental to its abilities, in a post titled ''LINUX is obsolete''.〔 While he initially did not go into great technical detail to explain why he felt that the microkernel design was better, he did suggest that it was mostly related to portability, arguing that the Linux kernel was too closely tied to the x86 line of processors to be of any use in the future, as this architecture would be superseded by then. To put things into perspective, he mentioned how writing a monolithic kernel in 1991 is "a giant step back into the 1970s". Since the criticism was posted in a public newsgroup, Torvalds was able to respond to it directly. He did so a day later, arguing that MINIX has inherent design flaws (naming the lack of multithreading as a specific example), while acknowledging that he finds the microkernel kernel design to be superior "from a theoretical and aesthetical" point of view. He also claimed that since he was developing the Linux kernel in his spare time and giving it away for free (Tanenbaum's MINIX was not free at that time), Tanenbaum should not object to his efforts. Furthermore, he mentioned how he developed Linux specifically for the Intel 80386 because it was partly intended as a learning exercise for Torvalds himself; while he conceded that this made the kernel itself less portable than MINIX, he asserted that this was an acceptable design principle, as it made the application programming interface simpler and more portable. For this reason, he stated, "linux is more portable than minix." Following Linus' reply, Tanenbaum argued that the limitations of MINIX relate to him being a professor, stating the requirement for the system to be able to run on the rather limited hardware of the average student, which he noted was an Intel 8088-based computer, sometimes even without a hard drive. Linux was, at that time, specifically built for the Intel 80386, a significantly more powerful (and expensive) processor. Tanenbaum also specifically states "() as of about 1 year ago, there were two versions (MINIX ), one for the PC (360K diskettes) and one for the 286/386 (1.2M). The PC version was outselling the 286/386 version by 2 to 1." He noted that even though Linux was free, it wouldn't be a viable choice for his students, as they would not be able to afford the expensive hardware required to run it, and that MINIX could be used on "a regular 4.77 MHz PC with no hard disk." To this, Kevin Brown, another user of the Usenet group, replied that Tanenbaum should not complain about Linux's ties to the 386 architecture, as it was the result of a conscious choice rather than lack of knowledge about operating system design, stating "() an explicit design goal of Linux was to take advantage of the special features of the 386 architecture. So what exactly is your point? Different design goals get you different designs." He also stated that designing a system specifically for cheap hardware would cause it to have portability problems in the future. Despite the fact that MINIX did not fully support the newer hardware, Tanenbaum argued that since the x86 architecture would be outdone by other architecture designs in the future, he did not need to address the issue, noting "Of course 5 years from now that will be different, but 5 years from now everyone will be running free GNU on their 200 MIPS, 64M SPARCstation-5." He stated that the Linux kernel would eventually fall out of style as hardware progressed, due to it being so closely tied to the 386 architecture.〔 Torvalds attempted to end the discussion at that point, stating that he felt he should not have overreacted to Tanenbaum's initial statements, and that he was composing a personal e-mail to him to apologize. However, he would continue the debate at a later time. 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「Tanenbaum–Torvalds debate」の詳細全文を読む スポンサード リンク
|